home *** CD-ROM | disk | FTP | other *** search
/ Ultra Gameplayers 101 / Ultra Game Players Magazine, No. 101 - September 1997 (Imagine Publishing, Inc.)(1997).iso / pc / new_ugp.dxr / 00271_Volume Slider Class.ls < prev    next >
Encoding:
Text File  |  1997-07-10  |  2.4 KB  |  85 lines

  1. property sliderSprite, sliderTop, sliderBottom, sliderXPos, faceSprite, miniFaceSprite, bigFaces, miniFaces, ancestor
  2.  
  3. on new me, paramList
  4.   set faceSprite to getProp(paramList, #faceSprite)
  5.   set miniFaceSprite to getProp(paramList, #miniFaceSprite)
  6.   set sliderSprite to getProp(paramList, #sliderSprite)
  7.   set sliderTop to 370
  8.   set sliderBottom to 437
  9.   set sliderXPos to 147
  10.   set bigFaces to ["ugpX_02", "ugpX_02", "ugpX_03", "ugpX_03", "ugpX_04", "ugpX_05", "ugpX_06"]
  11.   set miniFaces to ["ugpXv2S.psd", "ugpXv2S.psd", "ugpXv3S.psd", "ugpXv3S.psd", "ugpXv4S.psd", "ugpXv5S.psd", "ugpXv6S.psd"]
  12.   SetVolume(me, the soundLevel)
  13.   SetSlider(me)
  14.   return me
  15. end
  16.  
  17. on TurnOn me
  18.   put "grabbed slider"
  19.   puppetSprite(sliderSprite, 1)
  20.   set range to sliderBottom - sliderTop
  21.   repeat while the mouseDown
  22.     set yPos to the mouseV
  23.     if yPos < sliderTop then
  24.       set yPos to sliderTop
  25.     end if
  26.     if yPos > sliderBottom then
  27.       set yPos to sliderBottom
  28.     end if
  29.     set the locV of sprite sliderSprite to yPos
  30.     set the locH of sprite sliderSprite to sliderXPos
  31.     set offset to yPos - sliderTop
  32.     set level to offset * 7 / range
  33.     set level to 7 - level
  34.     if level < 1 then
  35.       set level to 1
  36.     end if
  37.     SetVolume(me, level)
  38.   end repeat
  39. end
  40.  
  41. on InitVolume me, level
  42.   puppetSprite(miniFaceSprite, 1)
  43.   set the soundLevel to level
  44.   set faceMember to getAt(miniFaces, level)
  45.   set faceMember to the number of member faceMember
  46.   set the memberNum of sprite miniFaceSprite to faceMember
  47.   updateStage()
  48. end
  49.  
  50. on SetVolume me, level
  51.   puppetSprite(miniFaceSprite, 1)
  52.   puppetSprite(faceSprite, 1)
  53.   set the soundLevel to level
  54.   set the memberNum of sprite miniFaceSprite to the number of member getAt(miniFaces, level)
  55.   set the memberNum of sprite faceSprite to the number of member getAt(bigFaces, level)
  56.   updateStage()
  57. end
  58.  
  59. on SetSlider me
  60.   puppetSprite(sliderSprite, 1)
  61.   set level to 7 - the soundLevel
  62.   set range to sliderBottom - sliderTop
  63.   set offset to level * range / 6
  64.   set yPos to sliderTop + offset
  65.   set the locV of sprite sliderSprite to yPos
  66.   set the locH of sprite sliderSprite to sliderXPos
  67. end
  68.  
  69. on TurnOff me
  70. end
  71.  
  72. on dispose me
  73.   put "dispose Volume Slider Class" && me
  74.   puppetSprite(sliderSprite, 0)
  75.   puppetSprite(miniFaceSprite, 0)
  76.   puppetSprite(faceSprite, 0)
  77.   set textDisplay to 0
  78.   set miniFaces to 0
  79.   set bigFaces to 0
  80.   if objectp(ancestor) then
  81.     dispose(ancestor)
  82.   end if
  83.   set ancestor to 0
  84. end
  85.